An increase in storage density and a reduction in cost per capacity (bit cost) can be more easily achieved for flash memories than for volatile memories (hereinafter referred to as RAMs) such as DRAMs (Dynamic Random Access Memories) or SRAMs (Static Random Access Memories). Moreover, flash memories provide faster access performance than magnetic disks and the like. Thus, utilizing a flash memory as a disk cache enables an inexpensive large-capacity disk cache to be created.
The storage capacities of flash memories have been increasing year after year, and the capacities of SSDs (Solid State Drives) using a flash memory as a storage medium have kept increasing. On the other hand, magnetic disks have been proved excellent for a long time and the capacities of HDDs (Hard Disk Drives) using a magnetic disk have continuously been increasing.
Storage systems adopt a data redundancy technique called RAID (Redundant Arrays of Inexpensive Disks). The RAID technique uses a plurality of drives (HDDs or SSDs) to make data redundant to improve reliability of data storage. For example, in RAID5, data is not lost even if any one of the plurality of drives forming a RAID group fails.
Data in a failing drive can be recovered by calculating data and a parity read from another normal drive. Redundancy can be recovered by writing recovered data to a reserved drive and incorporating the reserved drive into the RAID group. A data recovery process is hereinafter referred to as a rebuild process.
However, if failures occur in a row (a double failure occurs), redundancy may fail to be recovered and data may be lost. That is, when a failure occurs in another drive in the same RAID group before a rebuild process on the first failure is completed, the rebuild process on the first failure fails to be achieved and the data is lost. RAID6 can simultaneously resist up to two failures, but when the third consecutive failure occurs, a problem similar to the problem described for RAID5 occurs and the data is lost.
Thus, a time needed for a rebuild process is preferably minimized in order to improve the reliability of the storage system. However, the drive capacity has kept increasing year after year, and HDDs have relatively low I/O (Input/Output) speeds. Consequently, the time for the rebuild process tends to extend.
PTL 1 discloses what is called a distributed RAID. The distributed RAID technique manages stripes containing data and parities by distributing the stripes among a plurality of drives each providing a storage area in a capacity pool.